import Vue from 'vue'
// 1、导入模块
import Vuex from 'vuex'
import cart from './modules/cart'
import products from './modules/products'
// 2、使用当前的插件
Vue.use(Vuex)

export default new Vuex.Store({
  state: { // 当前的状态
    count: 0,
    username:'AAAAAAAA',
  },
  getters:{
    evenOrOdd(state){
      return  state.count %2 === 0 ? '偶数': '奇数';
    }
  },
  mutations: { // 声明同步的方法
    increment(state){
      // 修改状态
      state.count++
    },
    decrement(state){
      state.count--
    },
    incrementAsync(state){
        state.count++;
    },
  },
  actions: { // 声明异步的方法
    // increment({commit}){
    //   //commit mutation中声明的方法
    //   commit('increment')
    // },
    // decrement({commit}){
    //   commit('decrement')
    // }

    incrementAsync({commit}){
      setTimeout(() => {
        commit('incrementAsync')
    }, 1000);
    }
  },
  modules: { 
    cart,
    products,
  }
})
